from typing import List, Optional
from typing_extensions import TypedDict

class AgentState(TypedDict):
    """定义Agent状态结构"""
    question: str                    # 用户提出的问题
    search_query: str                # 生成的搜索查询
    search_results: str              # 搜索结果
    research_complete: bool          # 研究是否完成的标志
    final_answer: str                # 最终答案
    images: Optional[List[dict]]     # 图像数据列表，每个元素包含url和描述
    tables: Optional[List[dict]]     # 表格数据列表，每个元素包含标题和内容
    multimodal_content: Optional[dict]  # 其他多模态内容